package array

// 获取array数组的第n个元素。如果n为负数，则返回从数组结尾开始的第n个元素。
func Nth (array []T, n ...int) (ret T) {
	idx := 0
	if len(n) > 0 {
		idx = n[0]
	}
	var fromRight bool
	if idx < 0 {
		fromRight = true
		idx = len(array) + idx
	}
	if !fromRight {
		if idx > len(array)-1 {
			return
		}
		return array[idx]
	} else  {
		if idx < 0 {
			return
		}
		return array[idx]
	}
}
